Strings library

From Cppreference

< cpp
Jump to: navigation, search

Contents

[edit] Null terminated narrow string management

[edit] Null-terminated wide string management

[edit] basic_string

Defined in header <string>

template<

    typename CharT,
    typename Traits = std::char_traits<CharT>,
    typename Allocator = std::allocator<CharT> >

> class basic_string;

The class basic_string generalizes the way how sequences of characters are manipulated and stored.

Several specializations of the class basic_string are provided:

Defined in header <string>
Type Definition
string basic_string<char>
wstring basic_string<wchar_t>
u16string basic_string<char16_t>
u32string basic_string<char32_t>

[edit] Hash support

The following specializations of class template hash are defined. These specializations provide hash support for default string types.

Defined in header <string>

template<> class hash<string>;
(C++11 feature)
template<> class hash<wstring>;
(C++11 feature)
template<> class hash<u16string>;
(C++11 feature)
template<> class hash<u32string>;
(C++11 feature)

[edit] char_traits

Strings library provides class template char_traits, defining types and functions for a character container. The following specializations are defined:

Defined in header <string>

template<> class char_traits<string>;

template<> class char_traits<wstring>;

template<> class char_traits<u16string>;
(C++11 feature)
template<> class char_traits<u32string>;
(C++11 feature)